/*********************************************************************************************************
* 模块名称：AT24Cxx.h
* 摘    要：AT24Cxx模块
* 当前版本：1.0.0
* 作    者：jadewo
* 完成日期：2025年05月22日 
* 内    容：AT24Cxx
* 注    意：                                                                  
**********************************************************************************************************
* 取代版本：
* 作    者：
* 完成日期：
* 修改内容：
* 修改文件：
*********************************************************************************************************/
#ifndef _AT24CXX_H_
#define _AT24CXX_H_

/*********************************************************************************************************
*                                              包含头文件
*********************************************************************************************************/

/*********************************************************************************************************
*                                              宏定义
*********************************************************************************************************/
//对应的内存字节大小
#define AT24C01 127 
#define AT24C02 255
#define AT24C04 511
#define AT24C08 1023
#define AT24C16 2047
#define AT24C32 4095
#define AT24C64 8191
#define AT24C128 16383
#define AT24C256 32767 

#define USER_DEFINE_EEPROM_TYPE AT24C32 //用户定义 EEPROM 的内存字节大小
/*********************************************************************************************************
*                                              枚举结构体
*********************************************************************************************************/

/*********************************************************************************************************
*                                              API函数声明
*********************************************************************************************************/

void InitAT24Cxx(void);             //初始化 AT24Cxx
unsigned char CheckAT24Cxx(void);   //检查器件是否存在

void AT24CxxWrite(unsigned short writeAddr, unsigned char* pBuffer, unsigned short numToWrite); //从指定地址开始写入指定长度的数据
void AT24CxxRead(unsigned short readAddr, unsigned char* pBuffer, unsigned short numToRead);    //从指定地址开始读出指定长度的数据

#endif
